define([ 'jquery', 'backbone','views/comunes/multiple_email', 'jqueryform', 'jqueryvalidation_es'
         ,'jquerynoty'
         ,'jquerynoty_default_theme',
         'jquerynoty_center_layout'], function($,Backbone,MultipleEmail) {
	var parametrosValNumeroCarne="";
	var AsistenteCatedraFormView = Backbone.View.extend({
		initialize : function() {
			var that=this;				
			if(!this.options.nuevo){
				this.cargarCorreosAsistenteCatedra("correos",this.options.id_partido);				
				parametrosValNumeroCarne={nuevo:0,id_rol_partido:this.options.id_rol_partido};	
			    if($("#trabaja").attr("checked")){
			    	$("#divOrganizacion").show();
			    }
			}else{
				this.multipleEmail=new MultipleEmail(
						{el:this.$el.find("#correos")
								,arrayLabel:"correos_electronicos"});
				parametrosValNumeroCarne={nuevo:1};
			}			
			
			this.$el.find("form").validate(
					{
						submitHandler : function(form) {
							$(form).ajaxSubmit({
								success:function(responseText, statusText, xhr, $form){
									var resultado=JSON.parse(responseText);
									if(resultado.error){
										noty({text:resultado.mensaje,'type':'error','layout':'center'});
									}
									else{
										$("#no_carne").focus();
										var mensaje="";
										if(that.options.nuevo){
											$form.resetForm();
											that.multipleEmail.reset();
											mensaje="Registro guardado con exito";
										}
										else{										
											mensaje="Registro actualizado con exito";
										}
										noty({text:mensaje
											,'type':'success','timeout':1000
											,'layout':'center','modal':true});										
									}
								}
							});
						},
						rules:{
							'datos_asistente_catedra[numero_carne]':{
								required:true,
								remote:{
									url:that.options.url+'/asistentesCatedra/checkNumeroCarne',
									data:parametrosValNumeroCarne
								}								
							},
							'datos_asistente_catedra[id_estado_laboral]':{
								required:true
							},
							'datos_asistente_catedra[empresa]':{
								required:'#trabaja:checked'
							}
							,
							'datos_personales[nombre]':{
								required:true
							},
							'datos_personales[genero]':{
								required:true
							},
							'datos_contacto[correo_electronico]':{
								email:true
							},
							'datos_usuario[password]':
							{
								minlength:4
							}
							,
							'datos_usuario[repetir_password]':{
								equalTo:"#password"
							}
						}
					});

		},
		render : function() {

		},
		events:{
			'click #trabaja':'click_ckbTrabaja'
		},
		click_ckbTrabaja:function(eventObject){
		    var ckbTrabaja=eventObject.target;		    
		    if(ckbTrabaja.checked){		    	
		    	$("#divOrganizacion").show();
		    }
		    else{
		    	$("#divOrganizacion").hide();
		    }
		    $("#organizacion").attr("value",'')
			 .focus();
		},
		cargarCorreosAsistenteCatedra:function(idcontenedor,pid_partido){
			var that=this;
			$("#"+idcontenedor).html("Cargando lista de correos...");
			parametros={id_partido:pid_partido};
			$.getJSON(this.options.url+"/partido/obtenerListaCorreos",parametros,function(rcorreos){
				$("#"+idcontenedor).html("");
				var multipleEmail=new MultipleEmail(
						{el:that.$el.find("#"+idcontenedor)
							,arrayLabel:"correos_electronicos",
							correos:rcorreos});
				multipleEmail.render();
			});			
		}
	});

	return AsistenteCatedraFormView;
});